package com.example.ssm.strategy;

import java.math.BigDecimal;
import org.springframework.stereotype.Component;

/**
 * 银行卡支付策略实现类
 */
@Component
public class BankCardStrategy implements PaymentStrategy {

    @Override
    public String pay(BigDecimal amount, String orderId) {
        // 实际项目中这里会调用银行卡支付的API
        return String.format("订单 %s 通过【银行卡】支付 %.2f 元成功", orderId, amount);
    }

    @Override
    public boolean validate(BigDecimal amount, String orderId) {
        // 验证支付参数
        if (amount == null || amount.compareTo(BigDecimal.ZERO) <= 0) {
            return false;
        }
        if (orderId == null || orderId.trim().isEmpty()) {
            return false;
        }
        // 银行卡支付可能需要验证卡号等信息
        return true;
    }
}
